package com.itheima.health.dao;

import com.github.pagehelper.Page;
import com.itheima.health.pojo.Order;
import org.apache.ibatis.annotations.Param;

import java.util.Date;
import java.util.List;
import java.util.Map;

/**
 * @Author：Super
 * @Date: 2020/12/6 11:27
 */
public interface OrderSettingListDao {

    /**
     * 预约列表的分页查询
     * @param queryString
     * @param option
     * @return
     */
    Page<Map<String, Object>> findByCondition(@Param("queryString") String queryString, @Param("option") String option);


    /**
     * 取消预约
     * @param id
     */
    void cancelById(Integer id);


    /**
     * 减少一个已预约数
     * @param orderDate
     */
    void subtractOrder(Date orderDate);

    /**
     * 通过id查询预约
     * @param id
     * @return
     */
    Order findById(Integer id);


    /**
     * 已到诊
     * @param id
     */
    void arriveById(Integer id);


    /**
     * 通过id查询详细的预约数据
     * @param id
     * @return
     */
    Map<String, String> findDetailById(Integer id);


    /**
     * 查询已选套餐
     * @param id
     * @return
     */
    List<Integer> findsetmealIdsByOrderId(Integer id);


    /**
     * 修改体检预约 的时间或套餐
     * @param newOrder
     */
    void update(Order newOrder);
}
